package com.qf.lanzhou.blog.api.service.impl;


import com.qf.lanzhou.blog.api.dao.Impl.TagDaoImpl;
import com.qf.lanzhou.blog.api.dao.TagDao;
import com.qf.lanzhou.blog.api.pojo.entity.Tag;
import com.qf.lanzhou.blog.api.service.TagService;

import java.util.List;


/**
 * @Author Nerly
 * @Date 2020/12/16 15:15
 * @JDK 1.8
 * @Version 1.0
 */
public class TagServiceImpl implements TagService {
    private TagDao tagDao = new TagDaoImpl();

    @Override
    public String checkExist(Tag tag) {
        Tag getTagByName = tagDao.getTagByName(tag);
        //判断标签名是否已存在
        //不存在，新增
        if (getTagByName == null) {
            //新增标签
            Tag addTag = tagDao.addTag(tag);
            return null;
        }
        //存在，抛出错误
        return "标签已存在";
    }

    @Override
    public List<Tag> selectTag() {
        List<Tag> tags = tagDao.selectTag();
        return tags;
    }

    @Override
    public void deleteTag(Tag tag) {
        tagDao.deleteTag(tag);
    }

    @Override
    public String updateTag(Tag tag) {
        //判断标签名是否已存在
        Tag tagByName = tagDao.getTagByName(tag);
        //不存在，更改
        if (tagByName == null) {
            tagDao.updateTag(tag);
            return null;
        }
        //存在，返回错误信息
        return "标签已存在";
    }

    @Override
    public List<Tag> getTagList(int articleId) {
        List<Tag> list = tagDao.checkArticleTagByArticleId(articleId);
        if (list.size()==0){
            throw new RuntimeException("系统异常");
        }
        return list;
    }
}
